环境搭建
本来只做了Windows环境的搭建,但在后期推送发现,家里Windows电脑还是不如Linux稳定,由于windows还需要配置墙,于是又使用了国外vps Linux环境进行推送。
Window环境
这里用的家里电脑 Windows系统,正巧看到之前github有类似win10环境搭建的项目,就学习了。
需要几个工具如下:
- cow
- tor
- vidalia
tor 可以去官网下载:https://www.torproject.org/download/download 选择Expert Bundle
其他两项根据github提供的链接下载的。
这里详细的配置我就不贴图了,有需要的朋友可以去下面这个链接查看详细教程:
https://github.com/gzm1997/shadow_spider
代理的路线如下:
这里使用ss做翻墙,然后tor代理到9050,之前很多人提到tor的socks5协议下requests使用存在问题,使用的urllib等,然后参考github博客的推荐使用cow转换协议,然后代码还是用了requests包
最后就通过burp代理了http端口,看了下暗网数据的访问过程,提取数据还算方便,在处理cookie的问题上还是遇到一些小坑。
Linux环境
需要的工具如下:
- tor
- privoxy
安装tor
1 | sudo apt-get install tor |
启动tor
1 | sudo service tor start |
这里我用的是国外vps,不需要配置ss来进行翻墙。如果国内的话,还需要配合ss启动
1 | tor Socks5Proxy 127.0.0.1:1080 |
Tor监听9050端口(Socks)
生成HashedControlPassword
1 | tor --hash-password mypassword |
然后编辑Tor的配置文件(/etc/tor/torrc):
开启ControlPort,这是其它应用(python-stem)和Tor沟通的端口:
1 | ControlPort 9051 |
开启cookie认证:
CookieAuthentication 1
如下:
然后重启Tor
安装Privoxy
Privoxy 和 上面Windows下的Cow类似,Tor本身不是HTTP代理,需要使用Privoxy作为Tor的HTTP代理
1 | sudo apt-get install privoxy |
配置Privoxy:
1 | sudo vim /etc/privoxy/config |
添加forward-socks5:
1 | forward-socks5 / 127.0.0.1:9050 . |
重启Privoxy
1 | sudo service privoxy restart |
privoxy默认监听8118端口,它把http请求转向到Tor的9050端口。
另外在这里又看到两种方法可以不转换协议来请求。
安装socks
1 | pip install PySocks |
使用requests1
2
3
4
5
6
7import socket
import socks
import requests
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 9050)
socket.socket = socks.socksocket
print(requests.get('http://api.ipify.org?format=json').text)
使用requesocks
1 | import os |
数据获取
代码涉敏暂不公布
暗网数据如下:
通过脚本做定时抓取,每天进行推送,后期考虑做个web平台用来推送数据分析归纳等
只提取了一些数据词条,未放入超链,考虑到超链一般也无法打开,内容如下:
写在最后
好久没更博了,很惭愧。前几天去看Teag1e的博客,发现写了很多漏洞挖掘的姿势,已经有段时间没有去挖掘漏洞了,不知不觉2018就剩这么几天了。感觉有好多东西要学,好多事情想做,却停在原点。算了,最近再写个2018记吧,拜拜